/**
 * @author DCSGO
 * @version 1.0
 * 网络相关概念
 */

/*
网络通信
1.概念: 两台设备之间通过网络实现数据传输
2.网络通信: 将数据通过网络从一台设备传输到另一台设备
3. java.net 包下提供了一系列的类或接口，供程序员使用，完成网络通信

网络
1.概念: 两台或多台设备通过一定物理设备连接起来构成了网络
2.根据网络的覆盖范围不同，对网络进行分类:
  局域网: 覆盖范围最小,仅仅覆盖一个教室或一个机房
  城域网: 覆盖范围较大，可以覆盖一个城市
  广域网: 覆盖范围最大，可以覆盖全国，甚至全球,万维网是广域网的代表

IP地址
1.概念: 用于唯一标识网络中的每台计算机
2.查看IP地址: ipconfig
3.ip地址的表示形式: 点分十进制 XX.XX.XX.XX
4.每一个十进制数的范围: 0~255
5.IP地址的组成 = 网络地址 + 主机地址，比如: 192.168.16.69
6.IPv6是互联网工程任务组设计的用于替代IPv4的下一代IP协议,其地址数量号称可以
  为全世界的每一粒沙子编上一个地址
7.由于IPv4最大的问题在于网络地址资源有限，严重制约了互联网的应用和发展。
  IPv6的使用，不仅能解决网络地址资源数量的问题，而且也解决了多种接入设备连入互联网的障碍

IPv4地址分类
1. A类地址：A类地址的第一个字节范围是1-126，用于大型网络。A类地址的前8位用于网络标识，后24位用于主机标识。
2. B类地址：B类地址的第一个字节范围是128-191，用于中型网络。B类地址的前16位用于网络标识，后16位用于主机标识。
3. C类地址：C类地址的第一个字节范围是192-223，用于小型网络。C类地址的前24位用于网络标识，后8位用于主机标识。
4. D类地址：D类地址的第一个字节范围是224-239，用于多播（Multicast）通信。
5. E类地址：E类地址的第一个字节范围是240-255，保留给将来使用。

1. A类地址：A类地址通常用于大型网络，如大型企业或互联网服务提供商。由于A类地址的网络标识位较少，
   可以容纳大量的主机。A类地址通常用于分配给大型组织或国家级网络。

2. B类地址：B类地址通常用于中型网络，如中型企业或大学校园网络。B类地址的网络标识位较多，
   可以容纳适中数量的主机。B类地址通常用于分配给中等规模的组织或网络。

3. C类地址：C类地址通常用于小型网络，如家庭网络或小型办公室网络。C类地址的网络标识位较多，
   可以容纳较少数量的主机。C类地址通常用于分配给小型组织或个人用户。

4. D类地址：D类地址用于多播通信，即将数据包同时发送给一组特定的目标设备。
   多播通信常用于视频流传输、在线游戏和实时通信等应用。

5. E类地址：E类地址是保留给将来使用的地址范围，目前尚未分配给任何特定的应用或组织。

域名
1.www.baidu.com
2.好处: 为了方便记忆，解决记IP的困难
3.概念: 将IP地址映射成域名

端口号
1.概念: 用于标识计算机上某个特定的网络程序
2.表示形式: 以整数形式,范围0~65535
3.0~1024已经被占用,比如
  ssh 22, ftp 21, smtp 25 http 804
  常见的网络程序端口号:
  tomcat :8080
  mysql:3306
  oracle:1521
  sqlserver:1433

网络通信协议
协议(TCP/IP)
TCP/IP (Transmission ControlProtocol/Internet Protocol)的简写
中文译名为: 传输控制协议/因特网互联协议，又叫网络通讯协议，这个协议是Internet最基本的协议
Internet国际互联网络的基础,简单地说，就是由网络层的IP协议和传输层的TCP协议组成的。

TCP和 UDP
TCP协议:
1.使用TCP协议前，须先建立TCP连接,形成传输数据通道
2.传输前，采用"三次握手"方式，是可靠的
3.TCP协议进行通信的两个应用进程: 客户端、服务端
4.在连接中可进行大数据量的传输
5．传输完毕，需释放已建立的连接，效率低

UDP协议:
1.将数据、源、目的封装成数据包，不需要建立连接
2.每个数据报的大小限制在64K内
3.因无需连接，故是不可靠的
4.发送数据结束时无需释放资源(因为不是面向连接的)，速度快

TCP网络通信编程
netstat指令
1.netstat -an 可以查看当前主机网络情况，包括端口监听情况和网络连接情况
2.netstat -an | more 可以分页显示
3.要求在dos控制台下执行

TCP网络通讯不为人知的秘密
1. 当客户端连接到服务端后，实际上客户端也是通过一个端口和服务端进行通讯
  的，这个端口是TCP/IP来分配的

 */

public class readme {
}
